草庐IT

c++ - WinAPI : Add style to combo box

全部标签

c++ - 如果路径包含符号链接(symbolic link),Windows API 获取文件属性?

我使用了_stat64(constchar*path,struct__stat64*buffer);API来获取文件/目录统计信息,但如果输入路径包含符号链接(symboliclink),则此API会失败。如果文件路径包含符号链接(symboliclink),GetFileAttributes()和GetFileAttributesEx()API也会失败。但正如MSDN中所述,如果路径指向一个符号链接(symboliclink),这两个函数返回符号链接(symboliclink)的属性。如果路径指向符号链接(symboliclink),甚至_stat64()也能工作。如果路径包含[no

c++ - 如果已最小化,如何恢复 winapi 窗口?

我已经尝试了很多函数,例如ShowWindow和IsWindowVisible至少尝试在窗口最小化时给出结果,更不用说恢复它了。无论窗口是否最小化,这些函数都会不断返回false。我也尝试过将GetWindowPlacement与SetWindowPlacement一起使用,但没有成功。我的HWND使用FindWindow(TEXT("Chrome_WidgetWin_1"),NULL);找到Chrome,这是成功的,但我想测试/恢复窗口,如果它被最小化并且这些过去10个小时没有什么可证明的。 最佳答案 Chrome有一个不可见的同

c - 我的 SHA256 哈希函数有什么问题?

我正在Windows应用程序中编写此函数,该应用程序生成某些文本的SHA-256哈希值。代码编译并运行良好,但似乎产生了不正确的输出。charGSalt[17]={0};HRESULTSaltHashAndStorePassword(_In_char*PlainTextPassword){HCRYPTPROVCryptProvider=NULL;HCRYPTHASHHashPointer=NULL;charPlainTextPasswordWithSalt[64]={0};strcat_s(PlainTextPasswordWithSalt,PlainTextPassword);str

c++ - IFileDialog 与 C 兼容吗?

问题不言而喻。我有一个使用SHBrowseforfolder的程序,但现在他们要我将它升级到我制作的IFileDialog,但它是在C++中,所以它甚至有可能让它与C一起工作,因为它是面向对象的? 最佳答案 IFileDialog是Microsoft的组件对象模型(COM)的一部分。COM编程可以在C中完成。虽然很乏味。这是一个教程(不能保证它的质量)http://www.codeproject.com/Articles/13601/COM-in-plain-C 关于c++-IFileD

c - 使用 DnsGetCacheDataTable 时内存泄漏

以下代码显示了DNS客户端中缓存的域名。有人可以帮我找到内存泄漏时的intstat=DnsGetCacheDataTable(pEntry);行吗?PS:编译代码时请使用DNSAPI.lib。#include"stdafx.h"#include#include#include#include#includetypedefstruct_DNS_CACHE_ENTRY{struct_DNS_CACHE_ENTRY*pNext;//PointertonextentryPWSTRpszName;//DNSRecordNameunsignedshortwType;//DNSRecordTypeu

c - 仍然不理解 C 中指向数字数组的指针

正如标题所说,我很笨。我试图在堆上分配空间来存储uint64_t数组的值。(它可以是任何类型的数字,但这是我用来区分值和指针的数字。)我得到了我的一个问题的答案here.我觉得我懂了。我想要做的是获取一个指向数字数组的指针,然后在运行时为该数组赋值。编辑:美国东部时间下午12:15更新。为了节省阅读量,我将原始问题留在下面,并根据评论和答案将问题缩小为以下内容。这是我的C代码:#include"stdafx.h"#include#include#defineNBRPTR3intmain(){uint64_t(*LngArr3)[NBRPTR];//pointertoarrayof3ui

windows - GetComputerName WinApi 调用和 %COMPUTERNAME% 环境变量

WinAPI调用GetComputerName和读取%COMPUTERNAME%环境变量是否总是在Windows上返回相同的结果? 最佳答案 不能保证这两个东西是一样的。例如,程序可以更改甚至删除环境变量。程序这样做有点不正常,但在技术上是可行的。 关于windows-GetComputerNameWinApi调用和%COMPUTERNAME%环境变量,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/

c - Gycwin : c compiler cannot create executables - tidalcycles installation

我正在尝试安装tidalcycles(http://tidalcycles.org/getting_started.html),但我在运行cabalinstalltidal命令时遇到了问题。最初由于windows10兼容性我遇到了问题,所以我安装了Cygwin并尝试从他的shell运行命令。但随后发生了这种情况:Andrea@Pc_di_Andrea~$cabalinstalltidalResolvingdependencies...Configuringold-time-1.1.0.3...Configuringnetwork-2.6.2.1...Failedtoinstallold

c++ - Windows下4K截屏直接存入缓冲区

我知道网络上有很多帖子使用GDI或DirectX方法在Windows中进行屏幕捕获。但是,我发现的所有内容都将捕获的图像保存到位图中,而我想将其保存到缓冲区中。这是我以GDi方式执行此操作的代码:HWNDhwind=GetDesktopWindow();HDChdc=GetDC(hwind);uint32_tresx=GetSystemMetrics(SM_CXSCREEN);uint32_tresy=GetSystemMetrics(SM_CYSCREEN);uint32_tBitsPerPixel=GetDeviceCaps(hdc,BITSPIXEL);HDChdc2=Creat

c++ - 如何检测文件是否被Windows中的其他进程打开

我在Windows中使用_findfirst函数打开文件,但我只想打开其他进程未打开的文件。情况是我将扫描目录读取文件并删除它们,而其他进程会在其中创建新文件。为了避免竞争条件,我发现了这个question其中提到可以使用nosharing选项打开文件。但这是怎么做到的?更新:我无法控制写入过程,所以不知道在创建文件时使用了哪些标志(如果没有)。此外,写入过程可能会发生变化(第三方软件)。 最佳答案 假设您的2个进程是唯一将打开文件的进程,从MSDNopensample:hFile=CreateFile(argv[1],//name